home *** CD-ROM | disk | FTP | other *** search
- /* sortnum.c - sort input numbers - numbers entered form keyboard */
- #include "stdio.h"
-
- main()
- {
- int i , n , t ;
- int a[100] ;
-
- printf(" Enter numbers - (type q to stop)") ;
- n=0 ;
- while( scanf("%d",&t) != 0 )
- { a[n] = t ;
- n = n + 1 ;
- }
-
- sortn(a,n) ;
-
- for(i=1 ; i < n ; i=i+1 )
- { printf(" %d",a[i] ) ; }
- }
-
- sortn(x,nx) /* put an array of ints into assending order */
- int x[] ; /* the array */
- int nx ; /* count of items to sort */
- {
- int i , j , pick ;
-
- for(i=0 ; i < (nx-1) ; i=i+1 )
- { /* find the smallest remaining number */
- pick = i ;
- for(j=i+1 ; j < nx ; j=j+1 )
- { if( x[j] < x[pick] )
- pick = j ; /*element x[pick] is smallest so far */
- }
- swap( & x[pick] , & x[i] ) ; /* exchange - smallest first */
- }
- }
-
- int swap(p1,p2) /* swap two numbers */
- int *p1 ; /* points to first number */
- int *p2 ; /* points to second number */
- {
- int temp ;
-
- temp = *p1 ;
- *p1 = *p2 ;
- *p2 = temp ;
- }
-